package com.hspedu.newData.dmsxl.数学技巧;

import org.junit.Test;

/**
 * @Author: yh
 * @description: 
 * @CreateTime: 2025-04-28 
 * @Version: 1.0
 */

// 快速幂，递归容易栈溢出
public class LC50实现幂函数 {

    public double myPow(double x, int n) {
        double pow = pow(x, n, 1);
        return pow;
    }

    public double pow(double x ,int n,double y){
        if (n == 0){
            return y;
        }
        else if (n<0){
            return pow(x,n+1,y/x);
        }else{
            return pow(x,n-1,y*x);
        }
    }



    @Test
    public void test() {
        // 测试代码
        double v = myPow(2, -2);
        System.out.println("=--------");
    }
}
